/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package managers;

import beans.Barrio;
import dao.BarrioDao;
import java.util.ArrayList;
import java.util.List;
import javax.swing.table.AbstractTableModel;
import util.BarriosTableModel;

/**
 *
 * @author nMoncho
 */
public class ManagerBarrios {

    private List<Barrio> barrios;
    private ArrayList<Barrio> barriosModelo;
    private BarriosTableModel model;
    private List<Barrio> barriosABorrar;

    public ManagerBarrios(){
        barrios = BarrioDao.getBarrios();
        rellenarModelo();

        barriosABorrar = new ArrayList<Barrio>();
    }

    private void rellenarModelo() {
        barriosModelo = new ArrayList<Barrio>();
        barriosModelo.addAll(barrios);

        model = new BarriosTableModel(barriosModelo);
    }

    public AbstractTableModel getModel(){
        return model;
    }

    public boolean agregarMusica(String nombre){
        for(Barrio barrio : barrios){
            if(barrio.getNombre().toLowerCase().compareTo(nombre.toLowerCase()) == 0)
                return false;
        }

        Barrio barrio = new Barrio();
        barrio.setNombre(nombre);

        barrios.add(barrio);
        barriosModelo.add(barrio);

        return true;
    }

    public void borrarMusica(int fila){
        Barrio barrio = barriosModelo.get(fila);

        barriosModelo.remove(barrio);
        barrios.remove(barrio);

        barriosABorrar.add(barrio);
    }

    public boolean guardarCambios(){
        boolean exito = BarrioDao.saveOrUpdateOrDelete(barrios, barriosABorrar);

        return exito;
    }
}